package com.wondertek.service.service.sys;

import com.baomidou.mybatisplus.extension.service.IService;
import com.wondertek.service.dto.app.req.*;
import com.wondertek.service.dto.sys.res.SysLoginRes;
import com.wondertek.service.dto.sys.res.SysUserRes;
import com.wondertek.service.entity.business.ConsumerPo;

/**
 * @description: 客户
 * @author: qinjianhui
 * @create: 2024-07-17 09:50
 **/
public interface ISysConsumerService extends IService<ConsumerPo> {

    /*
    * 获取用户信息
    * */
    ConsumerPo getUser();

    /*
    * 短信获取验证码
    * */
    void massageCode(String mobile) throws Exception;

    /*
    * 修改个人信息
    * */
    void updateInfo(AppAuthUpdateInfoReq req);

    /*
    * 重置密码
    * */
    void restPassword(AppAuthUpdatePasswordReq passwordReq);

    /**
     * 退出登录
     * @param token /
     */
    void logout(String token);

    /*
    * 注册
    * */
    void register(AppAuthRegisterReq registerReq);

    /*
     * 手机注册
     * */
    void mobileRegister(AppAuthMobileRegisterReq registerReq);

    /*
    * 登陆
    * */
    SysLoginRes login(AppAuthLoginReq loginReq);

    /*
    * 发送邮箱验证码
    * */
    String getMailCode(String email);

    /*
    * 验证码校验
    * */
    boolean checkCode(AppAuthCheckCodeReq req);

    /*
     * 短信验证码校验
     * */
    boolean checkMassageCode(AppAuthCheckMassageCodeReq req);

    /**
     * 获取安装角色的用户信息
     *
     * @return
     */
    SysUserRes getInstallerUserInfo();

    /**
     * 安装角色重置密码
     *
     * @param passwordReq
     */
    void installerRestPassword(AppAuthInstallerRestPasswordReq passwordReq);

    /**
     * 更新fcmtoken
     *
     * @param token
     */
    void updateFcmToken(String token);
}

